﻿using System;
using System.ComponentModel;

namespace MyTinnyApi.model
{
    public class PostmanEnvRoot 
    {
        public string Id { get; set; }

        public string Name { get; set; }

        public List<PostmanEnvValues> Values { get; set; }

        public string _postman_variable_scope { get; set; }

        public string _postman_exported_at { get; set; }

        public string _postman_exported_using { get; set; }
    }

    public class PostmanEnvValues 
    {
        public string Key { get; set; }

        public string Value { get; set; }

        public bool Enabled { get; set; }

    }


    public class PostmanCollectionRoot
    {

        public PostmanCollectionInfo info { get; set; }

        public List<PostmanCollectionItem> item { get; set; }

    }

    public class PostmanCollectionInfo 
    {
        public string _postman_id { get; set; }
        public string name { get; set; }
        public string schema { get; set; }
        public string _exporter_id { get; set; }

        
    }

    public class PostmanCollectionItem
    {
        public string name { get; set; }

        public PostmanCollectionItemProtocolProfileBehavior protocolProfileBehavior { get; set; }

        public PostmanCollectionItemRequest request { get; set; }


        public List<PostmanCollectionItemResponse> response { get; set; }

        public List<PostmanCollectionItem> item { get; set; }

    }

    public class PostmanCollectionItemProtocolProfileBehavior
    {
        public bool disableBodyPruning { get; set; }
    }

    public class PostmanCollectionItemRequest
    {
        public string method { get; set; }
        public PostmanCollectionItemRequestUrl url { get; set; }
        public List<PostmanCollectionItemRequestHeader> header { get; set; }
        public PostmanCollectionItemRequestBody body { get; set; }
    }

    public class PostmanCollectionItemRequestHeader
    {
        public string key { get; set; }
        public string name { get; set; }
        public string value { get; set; }
        public string type { get; set; }
        public bool disabled { get; set; }
    }

    public class PostmanCollectionItemRequestBody
    {
        public string mode { get; set; }
        public string raw { get; set; }
        public PostmanCollectionItemRequestBodyOptions options { get; set; }
        public List<PostmanCollectionItemRequestBodyFormData> formdata { get; set; }
    }

    public class PostmanCollectionItemRequestBodyFormData
    {
        public string key { get; set; }
        public string type { get; set; }
        public string value { get; set; }
        public string src { get; set; }
        public bool disabled { get; set; }
    }

    public class PostmanCollectionItemRequestBodyOptions
    {
        public PostmanCollectionItemRequestBodyOptionsRaw raw { get; set; }
    }

    public class PostmanCollectionItemRequestBodyOptionsRaw
    {
        public string language { get; set; }
    }

    public class PostmanCollectionItemRequestUrl
    {
        public string raw { get; set; }
        public string protocol { get; set; }
        public List<string> host { get; set; }
        public string port { get; set; }
        public List<string> path { get; set; }
        public List<PostmanCollectionItemRequestUrlQuery> query { get; set; }
    }

    public class PostmanCollectionItemRequestUrlQuery
    {
        public string key { get; set; }
        public string value { get; set; }
        public bool disabled { get; set; }
    }

    public class PostmanCollectionItemResponse
    {

    }
}

